package net.feixiang.structural.adapter.contrary;

import net.feixiang.structural.adapter.Adaptee;

/**
 * 手动适配器演示
 * <p>
 * 通过手动调用被适配者的特殊请求方法来适配目标接口的请求方法。
 * </p>
 *
 * @author 飞翔
 * @see <a href="https://www.feixiang.net/Java%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E7%AC%AC%E4%BA%8C%E7%AB%A0%E3%80%81%E7%BB%93%E6%9E%84%E5%9E%8B%E6%A8%A1%E5%BC%8F/21.html">适配器模式</a>
 */
public class ManualAdapterDemo {
    public static void main(String[] args) {
        // Target的实现类最初的请求方法
        // request();

        Adaptee adaptee = new Adaptee();

        // 很明显这里需要修改客户端代码，因为原来的请求方法是 request()
        adaptee.specificRequest();
    }
}
